/*
 * Created by Federico Pisarello - SisDev Software (c) 2012 - fpisarello@sisdevsoft.com
 */

var actionForm = 'carrerasAction.php';
var actionItem = undefined;

var iConstPtoCard = new fn_constPtoCard();
function fn_constPtoCard()
{
	this.NORTE = "NORTE";
	this.SUR = "SUR";
	this.ESTE = "ESTE";
	this.OESTE = "OESTE";
}

var idUser;
var idPaloma;

function $_initPopItem()
{		
	$(".numeric").numeric();
	$("#carreraHoraMarca").mask("99:99:99",{placeholder:" "});
	$("#carreraHoraInicio").mask("99:99:99",{placeholder:" "});
	
	$("#carreraAdelanto").mask("99:99:99",{placeholder:" "});
	$("#carreraAtraso").mask("99:99:99",{placeholder:" "});
	
	//Add Click for All Buttons in Pop Form
	$('#btnExitItemPop').click( function(e) {
		$('#carrerasDialogItem').dialog('close');
	});
		
	$('#carreraUsuario').change( function() {
		$_getDistanciaPalomar();
	});
	
	$('#carreraPaloma').blur( function() {
		$_savePalomaUsario();
	});
		
	$('#carreraAdelanto').blur( function() {
		$_getValoresPaloma();
	});
	
	$('#carreraAtraso').blur( function() {
		$_getValoresPaloma();
	});
	
	$('#carreraHoraMarca').blur( function() {
		$_getValoresPaloma();
	});
	
	$('#carreraDiaMarca').blur( function() {
		$_getValoresPaloma();
	});
	
	idUser = undefined;
	
	$_ValidatorSetDefaults();
	$_initPopItemValidator();
	
	if(actionItem == iConst.EDIT)
	{
		switch (ptoCardEditing) {
			case iConstPtoCard.NORTE:
				$('#carreraPtoCardinal').val('N');
				break;
			case iConstPtoCard.SUR:
				$('#carreraPtoCardinal').val('S');
				break;
			case iConstPtoCard.ESTE:
				$('#carreraPtoCardinal').val('E');
				break;
			case iConstPtoCard.OESTE:
				$('#carreraPtoCardinal').val('O');
				break;
		}
		idUser = dataRow[1];
		tipoPaloma = dataRow[2].substring(0, 1);
		
		$("#carreraTipo option[value='"+tipoPaloma+"']").attr("selected", "selected");
		$('#carreraPaloma').val(dataRow[3]);
		$('#carreraDiaMarca').val(dataRow[4]);
		$('#carreraHoraMarca').val(dataRow[5]);
		$('#carreraAdelanto').val(dataRow[6].substring(0, 2) + ':' + dataRow[6].substring(2, 4) + ':' + dataRow[6].substring(4, 6));
		$('#carreraAtraso').val(dataRow[7].substring(0, 2) + ':' + dataRow[7].substring(2, 4) + ':' + dataRow[7].substring(4, 6));
		if(dataRow[10] == 'S')
			$('#carreraItemEspecial').attr('checked', true);
		else
			$('#carreraItemEspecial').attr('checked', false);
		//PK del Item de la Carrera
		actionItemNortePK = dataRow[0];
		$_getValoresPaloma();
	}
	
	//Populate Combos
	$.ajax({ 
	    url: actionForm, 
	    type:'POST', 
	    data: 'actionOfForm=getUsuarios', 
	    dataType: 'json', 
	    success: function(json) {
	    	$('#carreraUsuario').append($('<option>').text('...').attr('value', 0));
	        $.each(json, function(i, value) {
	        	if(value.idUser == idUser)
	        		$('#carreraUsuario').append($('<option selected>').text(value.userCompleteName).attr('value', value.idUser));
	        	else
	        		$('#carreraUsuario').append($('<option>').text(value.userCompleteName).attr('value', value.idUser));
	        });
	    }
	});
}

function $_savePalomaUsario()
{	
	if($('#carreraUsuario').val() == 0)
		return;
	
	if($('#carreraPaloma').val() == '')
		return;
	
	//Populate Combos
	$.ajax({ 
	    url: actionForm, 
	    type:'POST', 
	    data: 'actionOfForm=savePaloma&idUser=' + $('#carreraUsuario').val() + '&anilloPaloma=' + $('#carreraPaloma').val(), 
	    dataType: 'json', 
	    success: function(json) {
	    	//Nada para hacer, valido todo desde el lado del Servidor
	    }
	});
}

function $_saveCarreraItem(actionItem)
{
	$('#btnSaveItemPop').attr('disabled', 'disabled');
	
	var paramData = 'actionOfForm=addOrEditItem&' + $("#carrerasPopItemForm").serialize() + "&idCarrera=" + actionPK + "&palomaAnillo=" + $('#carreraPaloma').val() + "&mtsMinutoReal=" + $('#mtsMinutoReal').val() + "&mtsMinuto=" + $('#mtsMinuto').text() + "&mtsPuntoSuelta=" + $('#mtsPuntoSuelta').text() + "&tiempoCorr=" + $('#tiempoCorr').text();
	
	if(actionItem == iConst.EDIT && actionItemNortePK != undefined)
	{
		if($('#carreraPtoCardinal').val() == 'N')
			paramData += '&idCarreraItem=' + actionItemNortePK;
		else if($('#carreraPtoCardinal').val() == 'S')
			paramData += '&idCarreraItem=' + actionItemSurPK;
		else if($('#carreraPtoCardinal').val() == 'E')
			paramData += '&idCarreraItem=' + actionItemEstePK;
		else if($('#carreraPtoCardinal').val() == 'O')
			paramData += '&idCarreraItem=' + actionItemOestePK;
	}
	
    $.ajax({
        type: 'POST',
        url: actionForm,
        data: paramData,
		dataType: 'json',
        success: function(jsonObj){
            if(jsonObj.status === 'OK'){
				$_showMessage('OK', jsonObj.status, jsonObj.msg);
				if(jsonObj.ptoCardinal == 'N')
				{
					$_ClearSaveItemPopForm();
					oTableNorte.fnReloadAjax();
					actionItemNortePK = undefined;
				}
				else if(jsonObj.ptoCardinal == 'S')
				{
					$_ClearSaveItemPopForm();
					oTableSur.fnReloadAjax();
					actionItemSurPK = undefined;
				}
				else if(jsonObj.ptoCardinal == 'E')
				{
					$_ClearSaveItemPopForm();
					oTableEste.fnReloadAjax();
					actionItemEstePK = undefined;
				}
				else if(jsonObj.ptoCardinal == 'O')
				{
					$_ClearSaveItemPopForm();
					oTableOeste.fnReloadAjax();
					actionItemOestePK = undefined;
				}
			}
			else
				$_showMessage('ERR', jsonObj.status, jsonObj.msg);
    
            $('#btnSaveItemPop').removeAttr('disabled');
        }
    });

return true;
}

function $_getDistanciaPalomar()
{	
	$.ajax({ 
	    url: actionForm, 
	    type:'POST', 
	    data: 'actionOfForm=distanciaPalomar&idUser=' + $('#carreraUsuario').val() + "&ptoCard=" + $('#carreraPtoCardinal').val() + "&idCarrera=" + actionPK, 
	    dataType: 'json', 
	    success: function(json) {
	    	$('#mtsPuntoSuelta').text(json.distancia);
	    	$_clearResultados();
	    }
	});
}

function $_getValoresPaloma()
{
	if(idUser == undefined) {
		if($('#carreraUsuario').val() == 0)
			return;
		else
			idUser = $('#carreraUsuario').val();
	}
	
	if($('#carreraPaloma').val() == 0)
		return;
	
	if($('#carreraAdelanto').val() == "") {
		$_clearResultados();
		return;
	}
	
	if($('#carreraAtraso').val() == "") {
		$_clearResultados();
		return;
	}
	
	if($('#carreraAtraso').val() != "00:00:00" && $('#carreraAdelanto').val() != "00:00:00") {
		$_showMessage('ALERT', 'ALERTA', 'Verifique Adelanto y Atraso Distinto de 0');
		return;
	}
	
	if($('#carreraHoraMarca').val() == "") {
		$_clearResultados();
		return;
	}
	
	if($('#carreraDiaMarca').val() == "") {
		$_clearResultados();
		return;
	}
	
	$.ajax({ 
	    url: actionForm, 
	    type:'POST', 
	    data: 'actionOfForm=calTiempoCorr&idUser=' + idUser + "&ptoCard=" + $('#carreraPtoCardinal').val() + "&idCarrera=" + actionPK + "&diaMarcada=" + $('#carreraDiaMarca').val() + "&horaMarcada=" + $('#carreraHoraMarca').val() + "&atrasoReloj=" + $('#carreraAtraso').val() + "&adelantoReloj="  + $('#carreraAdelanto').val(), 
	    dataType: 'json', 
	    success: function(json) {
	    	$('#mtsPuntoSuelta').text(json.distancia);
	    	$('#tiempoCorr').text(json.tiempoRecorrido);
	    	$('#mtsMinuto').text(json.mtsMinutos);
			$('#mtsMinutoReal').val(json.mtsMinutosReal);
	    	$('#tiempoCal').text(json.tiempoCal);
	    	$('#horaAleAtra').text(json.horaAleAtra);
	    	
	    }
	});
}

function $_initPopItemValidator()
{
	$('#carrerasPopItemForm').validate({
		submitHandler: function() {
			$_saveCarreraItem(actionItem);
		}, 		
		rules: {
			carreraPtoCardinal: {required: true,minlength: 1},
			carreraUsuario: {required: true,minlength: 1},
			carreraTipo: {required: true,minlength: 1},
			carreraPaloma: {required: true,minlength: 1},
			carreraHoraMarca: {required: true,minlength: 1},
			carreraDiaMarca: {required: true,minlength: 1},
			carreraAdelanto: {required: true,minlength: 1},
			carreraAtraso: {required: true,minlength: 1}
		},
		messages: {
			carreraPtoCardinal: {required: '',minlength: ''},
			carreraUsuario: {required: '',minlength: ''},
			carreraTipo: {required: '',minlength: ''},
			carreraPaloma: {required: '',minlength: ''},
			carreraHoraMarca: {required: '',minlength: ''},
			carreraDiaMarca: {required: '',minlength: ''},
			carreraAdelanto: {required: '',minlength: ''},
			carreraAtraso: {required: '',minlength: ''}
		}
	});
}

function $_ClearCarreraItemPopForm()
{	
	$("#carrerasDialogItems").empty();
}

function $_clearResultados()
{
	$('#tiempoCorr').text("0.00");
	$('#mtsMinuto').text("0.00");
	$('#tiempoCal').text("00:00:00");
	$('#horaAleAtra').text("0.00");	
}

function $_ClearItemPopForm()
{
	$('#carreraUsuario').val(0);
	$('#carreraPaloma').val('');
	$('#carreraHoraMarca').val('');
	$('#carreraItemEspecial').attr('checked', false);
	$('#carreraAdelanto').val('');
	$('#carreraAtraso').val('');
	$('#carreraDiaMarca').val('');
}

function $_ClearSaveItemPopForm()
{
	$('#carreraPaloma').val('');
	$('#carreraHoraMarca').val('');
	$('#carreraItemEspecial').attr('checked', false);
}
